/*
 * uiapp.h
 *
 *  Created on: 2011-5-23
 *      Author: chenl
 */

#ifndef UIAPP_H_
#define UIAPP_H_

#include "task_wrapper.h"
#include "loki/Singleton.h"
#include "drawer.h"
#include "global.h"

class CUIApp
{
public:
	CUIApp();
	~CUIApp();

public:
	int32_t Initialize();
	int32_t Uninitialize();

	void DoUpdate();

	bool IsUpdated();

	void SetUpdated();

public:
	CUIThreadLog& logEngine;
private:
	IDrawer* pDrawer_;
};

typedef Loki::SingletonHolder<CUIApp> 	UIApp;
#define CREATE_UIAPP_INSTANCE			UIApp::Instance
#define GET_UIAPP_INSTANCE				UIApp::Instance

#endif /* UIAPP_H_ */
